Skip to main content

Quick Start

Get SDK

gitee: https://gitee.com/FourierIntelligence/fourieractuatorsdk

github: https://github.com/FFTAI/fourier_actuator_sdk

Operational Steps

Step 1: Hardware Setup

  1. Connect Power and Network

    • Connect the 48V DC power supply to the FSA
    • Connect the network cable to the FSA
    • Observe the FSA indicator light status after powering on
  2. Check Indicator Light Status

    • Purple breathing light: Normal status
    • ⚠️ Yellow/Red breathing light: Error occurred, need to query error code through host computer
  3. Confirm IP Address

    • Check if the FSA IP is 192.168.137.101
    • 💡 Tip: cpp example uses 192.168.137.101 as the default target FSA address


Step 2: Environment Configuration

Linux Environment

# Install build tools
sudo apt install build-essential cmake

# Install Python dependencies
pip install numpy pandas fi_fsa

Windows Environment

# Install Python dependencies
pip install numpy pandas fi_fsa

Step 3: Run Example

C++ - Linux

# Navigate to example directory
cd Linux-x86_64/cpp/example

# Build
cmake -B build -G "Unix Makefiles" && cmake --build build

# Run example
./build/get_pvctte

C++ - Windows

# Navigate to example directory
cd Windows-x86_64\cpp\example

# Build (requires MinGW)
cmake -B build -G "MinGW Makefiles" && cmake --build build

# Run example
.\build\get_pvctte.exe

C++ Example Output

If successful, you should see output similar to the following:

FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: -0.0018, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 260 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 314 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 99 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 276 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 231 us
FSA(192.168.137.101): pos: 0.5418, vel: 0.0008, cur: 0.0000, tor: 0.0104, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 1308 us
FSA(192.168.137.101): pos: 0.5418, vel: -0.0012, cur: 0.0000, tor: 0.0032, tor_e: 0.0000
FSA(192.168.137.101): elapsed time: 88 us
FSA(192.168.137.101): pos: 0.5418, vel: -0.0012, cur: 0.0000, tor: 0.0032, tor_e: 0.0000

⚠️ Troubleshooting: If an error code is returned, please refer to the C++ API Documentation to query the corresponding status code and troubleshoot.


Python - Linux

# Navigate to example directory
cd Linux-x86_64/python/v2/example

# Run example
python3 ./demo_fast_get_pvct.py

Python - Windows

# Navigate to example directory
cd Windows-x86_64\python\v2\example

# Run example
python .\demo_fast_get_pvct.py

Python Example Output

If successful, you should see output similar to the following:

[2026.01.19 13:37:27.333.072]  Info:    192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.333.072] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U&\xbc\xa0\xac\xbb\x00\x00\x00\x00:t\xfbX'
Position = 31.041576, Velocity = -0.019614, Current = 0.000000, Torque = 0.000935
[2026.01.19 13:37:27.534.313] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.534.864] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U)<A\x96\xa8\x00\x00\x00\x00:\xa7\xf56'
Position = 31.041582, Velocity = 0.011816, Current = 0.000000, Torque = 0.001281
[2026.01.19 13:37:27.735.719] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.736.739] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8UA=x\x04\x86\x00\x00\x00\x00;\x7ff\xdc'
Position = 31.041628, Velocity = 0.060551, Current = 0.000000, Torque = 0.003897
[2026.01.19 13:37:27.936.982] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:27.937.490] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8UO<\xf7\xba\xe6\x00\x00\x00\x00\xbb\xc1\x8c\x80'
Position = 31.041655, Velocity = 0.030240, Current = 0.000000, Torque = -0.005907
[2026.01.19 13:37:28.138.463] Info: 192.168.137.101 : Send Data: b'\x1d'
[2026.01.19 13:37:28.138.967] Info: 192.168.137.101: Server received from ('192.168.137.101', 2335):b'\x1dA\xf8U\x1a=r\x1d\xd2\x00\x00\x00\x00;\x91^\xcd'
Position = 31.041553, Velocity = 0.059110, Current = 0.000000, Torque = 0.004436

Step 4: Make FSA Rotate

⚠️ Safety Warning:

  • Secure the FSA before making it rotate
  • Ensure the DC power supply current limit threshold is set appropriately (no-load current can be limited within 2A)
  • If the FSA response is slow, you may need to adjust PID/PD parameters

Position Control Example - C++ (Linux)

# Navigate to example directory
cd Linux-x86_64/cpp/example

# Run example
./build/position_control

Position Control Example - C++ (Windows)

# Navigate to example directory
cd Windows-x86_64\cpp\example

# Run example
.\build\position_control.exe

Position Control Example - Python (Linux)

# Navigate to example directory
cd Linux-x86_64/python/v2/example

# Run example
python3 ./demo_fast_control_position_mode.py

Position Control Example - Python (Windows)

# Navigate to example directory
cd Windows-x86_64\python\v2\example

# Run example
python .\demo_fast_control_position_mode.py

For more detailed documentation, please refer to:


💡 Tips

  • If you encounter issues, first check hardware connections and IP address configuration

  • For error code queries, please refer to the corresponding API documentation

  • It is recommended to secure the FSA before performing motion control tests